﻿using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;

namespace TTApp.Phone.Silverlight.Hexagons
{
    /// <summary>
    /// Lớp chứa thông tin về sự kiện thay đổi người chơi. Việc thay đổi người chơi có thể là thay đổi do
    /// chuyển lượt giữa người chơi trong cùng 1 game, hoặc thay đổi chủ sở hữu của 1 Hexagon.
    /// </summary>
    public class PlayerChangedEventArgs : EventArgs
    {
        #region //----------------------------- Class Private Fields --------------------------------------//
        private Player _oldPlayer;
        private Player _newPlayer;
        #endregion

        #region //----------------------------- Class Public Constructors ---------------------------------//
        /// <summary>
        /// Khởi tạo 1 đối tượng PlayerChangedEventArgs mới.
        /// </summary>
        /// <param name="oldPlayer">Người chơi ở lượt chơi trước.</param>
        /// <param name="newPlayer">Người chơi ở lượt chơi hiện tại.</param>
        public PlayerChangedEventArgs(Player oldPlayer, Player newPlayer)
        {
            _oldPlayer = oldPlayer;
            _newPlayer = newPlayer;
        }
        #endregion

        #region //----------------------------- Class CLR Properties --------------------------------------//
        /// <summary>
        /// Người chơi ở lượt chơi trước.
        /// </summary>
        public Player OldPlayer
        {
            get { return _oldPlayer; }
        }

        /// <summary>
        /// Người chơi ở lượt chơi hiện tại.
        /// </summary>
        public Player NewPlayer
        {
            get { return _newPlayer; }
        }
        #endregion
    }
}
